package com.wzy.pipeline2;


import com.wzy.pipeline2.model.FlowResult;
import com.wzy.pipeline2.model.PipeLineContext;

/**
 * @Auther: wzy
 * @Date: 2021/12/11/16:34
 * @Description: 管道接口，包括添加阀门方法以及开启管道方法
 */
public interface PipeLine {
    /**
     * 添加阀门
     *
     * @param valve 阀门
     */
    void addValve(Valve valve);

    /**
     * 开启管道
     *
     * @param pipeLineContext 管道上下文
     * @return FlowResult
     */
    FlowResult start(PipeLineContext pipeLineContext);
}
